{{- $engine := site.Params.math.engine | default "katex" -}}
{{- if eq $engine "katex" -}}
  {{- $opts := dict "output" "htmlAndMathml" "displayMode" (eq .Type "block") }}
  {{- with try (transform.ToMath .Inner $opts) }}
    {{- with .Err }}
      {{ errorf "Unable to render mathematical markup to HTML using the transform.ToMath function. The KaTeX display engine threw the following error: %s: see %s." . $.Position }}
    {{- else }}
      {{- .Value }}
      {{- $.Page.Store.Set "hasMath" true }}
    {{- end }}
  {{- end }}
{{- else -}}
  {{/* MathJax - need to add delimiters back in */}}
  {{- $.Page.Store.Set "hasMath" true }}
  {{- if eq .Type "block" -}}
    \[{{- .Inner -}}\]
  {{- else -}}
    \( {{- .Inner -}} \)
  {{- end -}}
{{- end -}}
